home *** CD-ROM | disk | FTP | other *** search
- From: Claus Brod <clausb@hpbeo79.bbn.hp.com>
- Subject: Re: Just a couple of things.
- Date: Tue, 24 May 94 9:12:26 MESZ
- In-Reply-To: <9405210013.AA00681@jelal.north.de>; from "Juergen Lock" at May 21, 94 2:13 am
- Mailer: Elm [revision: 70.85]
-
- > hmm, sure? if we just want IO to halt only processes which are in a
- > disk IO systemcall (as opposed to `halt _every_ process' like its now...)
- > then we don't need real multithreaded filesystems yet, and i don't think
- > the kernel needs much more reentrancy than now like when a process
- > sleeps for tty IO. and the SCSI interrupt handler could just reset
- > its in-service bit and ipl and then addroottimeout()?
-
- I tried similar things, and no, it won't work. The situation is as
- follows:
-
- - Process A calls GEMDOS to read a file.
-
- - GEMDOS calls BIOS to read a block.
-
- - HD driver initiates transfer, puts process A to sleep. Note that
- process A is now sleeping *inside* GEMDOS.
-
- - Process B makes a GEMDOS call.
-
- Similar scenarios are possible for VDI and AES calls which in turn
- call GEMDOS (vst_loadfonts, rsrc_load...).
-
- The most simple solution would be to block any GEMDOS call when
- another process already is in GEMDOS. This would at least allow
- other processes to use the CPU or call (X)BIOS. Better than
- nothing.
-
- --clausb@hpbeo79.bbn.hp.com-----------------------------------------------
- Claus Brod, MDD, HP Boeblingen Have you hugged your manager today?
- --#include <std_disclaimer>-----------------------------------------------
-